package com.cDesarrollador.dao;

import java.util.List;

import org.hibernate.SessionFactory;

import com.cDesarrollador.model.Gastos;

public class GastosDAO implements IGastosDAO {
	
	private SessionFactory sessionFactory;
	 
    /**
     * Get Hibernate Session Factory
     *
     * @return SessionFactory - Hibernate Session Factory
     */
    public SessionFactory getSessionFactory() {
        return sessionFactory;
    }
 
    /**
     * Set Hibernate Session Factory
     *
     * @param SessionFactory - Hibernate Session Factory
     */
    public void setSessionFactory(SessionFactory sessionFactory) {
        this.sessionFactory = sessionFactory;
    }
 
    /**
     * Add Gastos
     *
     * @param  Gastos Gastos
     */
   
    public void addGastos(Gastos Gastos) {
        getSessionFactory().getCurrentSession().save(Gastos);
    }
 
    /**
     * Delete Gastos
     *
     * @param  Gastos Gastos
     */
 
    public void deleteGastos(Gastos Gastos) {
        getSessionFactory().getCurrentSession().delete(Gastos);
    }
 
    /**
     * Update Gastos
     *
     * @param  Gastos Gastos
     */
   
    public void updateGastos(Gastos Gastos) {
        getSessionFactory().getCurrentSession().update(Gastos);
    }
 
    /**
     * Get Gastos
     *
     * @param  int Gastos Id
     * @return Gastos
     */
   
    public Gastos getGastosById(int id) {
        List list = getSessionFactory().getCurrentSession()
                                            .createQuery("from Gastos where id=?")
                                            .setParameter(0, id).list();
        return (Gastos)list.get(0);
    }
 
    /**
     * Get Gastos List
     *
     * @return List - Gastos list
     */
   
    public List<Gastos> getGastoss() {
        List list = getSessionFactory().getCurrentSession().createQuery("from Gastos").list();
        return list;
    }
	

}
